﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using Microsoft.Practices.Unity;
using System.Text.RegularExpressions;
using ddcCajamarca.BusinessEntities.Directorio;
using ddcCajamarca.BusinessLogic.Directorio.Service;
using ddcCajamarca.Repository.Directorio.Service;

namespace ddcCajamarca.BusinessLogic.Directorio
{
    public class PersonaBL:IPersonaBL
    {
        [Dependency]
        public IPersonaRepository personaRepository { get; set; }

        public Persona GetFromPersonaById(int id)
        {
            return personaRepository.GetFromPersonaById(id);
        }

        public IEnumerable<Persona> GetPersonasByNombreActividadCiudad(string nombre, string actividad, string ciudad)
        {
            return personaRepository.GetPersonasByNombreActividadCiudad(nombre, actividad, ciudad);
        }

        public IEnumerable<PersonaDTO> GetPersonasByCriterios(string criterio, string actividadId, string ubigeoId, string organizacionId, int Autoridad)
        {
            return personaRepository.GetPersonasByCriterios(criterio, actividadId, ubigeoId, organizacionId, Autoridad);
        }

        public void AddPersona(Persona persona)
        {
            personaRepository.AddPersona(persona);
        }

        public void UpdatePersona(Persona persona)
        {
            personaRepository.UpdatePersona(persona);
        }

        public void DeletePersona(int id)
        {
            personaRepository.DeletePersona(id);
        }

        public int GetPersonaByDNI(string dni, int iddoc, string opcion, int id)
        {
            return personaRepository.GetPersonaByDNI(dni, iddoc, opcion, id);
        }


        //para el default
        public List<Persona> GetAllPersonasByFechCumpleaños()
        {
            return personaRepository.GetAllPersonasByFechCumpleaños();
        }
    }
}
